#ifndef REGISTERHANDLER_H
#define REGISTERHANDLER_H

#include "resip/dum/RegistrationHandler.hxx"


class RegisterHandler : public resip::ClientRegistrationHandler
{
public:
	// Constructor & Destructor

	RegisterHandler();
	virtual ~RegisterHandler();

	// Memberfunctions

	void initialize();
	void cleanup();

	bool isDone(){ return m_done; }

	// Callback functions

	virtual void onFailure(resip::ClientRegistrationHandle h, const resip::SipMessage& response);
	virtual void onRemoved(resip::ClientRegistrationHandle h, const resip::SipMessage& respons);
	virtual int onRequestRetry(resip::ClientRegistrationHandle h, int retrySeconds, const resip::SipMessage& respons);
	virtual void onSuccess(resip::ClientRegistrationHandle h, const resip::SipMessage& respons);

private:
	// Membervariables

	bool m_done;
};

#endif